Docker কন্টেইনারের জন্য রিসোর্স সীমাবদ্ধতা নির্ধারণ করা একটি গুরুত্বপূর্ণ দিক, যা কন্টেইনারগুলির মধ্যে সম্পদের ব্যবহার নিয়ন্ত্রণ এবং পরিচালনা করতে সহায়তা করে। এটি বিশেষ করে পরিবেশের স্থায়িত্ব এবং কার্যকারিতা বজায় রাখতে গুরুত্বপূর্ণ। নিচে CPU এবং Memory সীমাবদ্ধতা নির্ধারণের পদ্ধতি এবং তাদের ব্যবহারের বিস্তারিত আলোচনা করা হলো।
Docker কন্টেইনারের জন্য CPU সীমাবদ্ধতা নির্ধারণ করা সম্ভব, যাতে প্রতিটি কন্টেইনার নির্দিষ্ট পরিমাণ CPU ব্যবহার করতে পারে। এর ফলে একটি কন্টেইনারের প্রভাব অন্যান্য কন্টেইনারের উপর পড়বে না।
--cpus
অপশন: এই অপশনটি কন্টেইনারের জন্য CPU সংখ্যা নির্ধারণ করতে ব্যবহৃত হয়।
এখানে 1.5
মানে কন্টেইনারটি 1.5টি CPU ব্যবহার করতে পারবে।
docker run --cpus="1.5" my-image
--cpu-shares
অপশন: এই অপশনটি কন্টেইনারের জন্য CPU শেয়ারের একটি আপেক্ষিক মান নির্ধারণ করে। এটি ডিফল্টরূপে 1024। আপনি কন্টেইনারগুলির মধ্যে CPU ব্যবহারের অংশ হিসেবে শেয়ারগুলি বরাদ্দ করতে পারেন।
এখানে 512
মানে এই কন্টেইনারের CPU শেয়ার 512, যা অন্য কন্টেইনারগুলির শেয়ারের তুলনায় কম।
docker run --cpu-shares=512 my-image
--cpuset-cpus
অপশন: এই অপশনটি নির্দিষ্ট CPU কোরগুলিকে বরাদ্দ করতে ব্যবহৃত হয়।
এখানে কন্টেইনারটি শুধুমাত্র CPU কোর 0 এবং 1 ব্যবহার করতে পারবে।
docker run --cpuset-cpus="0,1" my-image
Docker কন্টেইনারের জন্য মেমরি সীমাবদ্ধতা নির্ধারণ করা আরও গুরুত্বপূর্ণ, কারণ এটি কন্টেইনারের মধ্যে মেমরি ব্যবহারের অস্বাভাবিক বৃদ্ধি রোধ করে এবং হোস্ট সিস্টেমের পারফরম্যান্স বজায় রাখতে সাহায্য করে।
--memory
অপশন: এই অপশনটি কন্টেইনারের জন্য সর্বাধিক মেমরি সীমা নির্ধারণ করতে ব্যবহৃত হয়।
এখানে 256m
মানে কন্টেইনারটি সর্বাধিক 256 মেগাবাইট মেমরি ব্যবহার করতে পারবে।
docker run --memory="256m" my-image
--memory-swap
অপশন: এই অপশনটি কন্টেইনারের জন্য মেমরি এবং সোয়াপের জন্য সর্বাধিক সীমা নির্ধারণ করে।
এখানে কন্টেইনারটি 256 মেগাবাইট মেমরি এবং 512 মেগাবাইট সোয়াপ ব্যবহার করতে পারবে।
docker run --memory="256m" --memory-swap="512m" my-image
--oom-kill-disable
অপশন: এই অপশনটি Out of Memory (OOM) কিলিং নিষ্ক্রিয় করতে ব্যবহৃত হয়, তবে এটি কন্টেইনারের জন্য সমস্যা সৃষ্টি করতে পারে।
docker run --oom-kill-disable my-image
নিচে একটি উদাহরণ দেওয়া হলো যেখানে CPU এবং Memory উভয়ই সীমাবদ্ধ করা হয়েছে:
docker run --cpus="2.0" --memory="512m" --memory-swap="1g" my-image
এই কমান্ডটি একটি কন্টেইনার চালাবে যা 2টি CPU এবং 512 মেগাবাইট RAM ব্যবহার করতে পারবে, এবং সর্বাধিক 1 গিগাবাইট সোয়াপ করতে পারবে।
Docker কন্টেইনারের জন্য CPU এবং Memory সীমাবদ্ধতা নির্ধারণ করা একটি গুরুত্বপূর্ণ কৌশল যা পরিবেশের স্থায়িত্ব এবং কার্যকারিতা বজায় রাখতে সাহায্য করে। সঠিক রিসোর্স কনফিগারেশন ব্যবহার করে আপনি কন্টেইনারের পারফরম্যান্স উন্নত করতে এবং হোস্ট সিস্টেমের সম্পদের সুষ্ঠু ব্যবস্থাপনা নিশ্চিত করতে পারেন।
আরও দেখুন...